#ifndef GRITC_SCENE_SCENE_HPP
#define GRITC_SCENE_SCENE_HPP

#include <gritc/scene/node.hpp>
#include <gritc/ui/widget.hpp>
#include <list>

namespace gritc { namespace scene {

	template<class Traits> struct scene_context 
	{
		typedef typename Traits::ui_frame_type ui_frame_type;
		typedef typename Traits::scene_frame_type scene_frame_type;
		typedef node<scene_frame_type> node_type;

		node_type * root_;

		node_type & root() { return *root_; }
		node_type & root(node_type & root__) { root_ = &root__; return *root_; }

		scene_context() : root_(NULL) {}
	};
}}

#endif